// 字符串转码
// js对文字进行转码的3个函数：escape,encodeURI,encodeURIComponent，
// 相应3个解码函数：unescape,decodeURI,decodeURIComponent

/**
 * 把字符串作为 URI 组件进行编码
 *
 * @param {string} str
 * @return {string}
 */
const StrToURI = (str) => {
  return encodeURIComponent(str)
}
/**
 * 将URI解码为字符串
 *
 * @param {string} uri
 * @return {string}
 */

const UriToStr = (uri) => {
  return decodeURIComponent(uri)
}

/**
 * 将字符串数组为 URI 组件进行编码
 *
 * @param {Array} arr
 * @return {Array}
 */
const strArrToURI = (arr) => {
  return arr.map((item) => StrToURI(item))
}

/**
 * URI数组解码为将字符串数组
 *
 * @param {Array} arr
 * @return {Array}
 */
const UriArrToStr = (arr) => {
  return arr.map((item) => UriToStr(item))
}

export { StrToURI, UriToStr, strArrToURI, UriArrToStr }
